1. Field of the Invention
The present invention relates to a validation check technique of a structured document.
2. Description of the Related Art
CVS (Concurrent Versions System) (http://www.cvshome.org/) is known as a tool for managing the versions of document files and source codes of programs. CVS parses data to be added to or deleted from a file of the previous version for respective lines, and adds difference information from the previous version to a version-managed file. When the user wants to acquire data of a certain version number, he or she designates that version number in a CVS server. Then, the CVS server parses version-managed files to extract data according to that version number. With this operation, the user can acquire a file of the designated version. The version designation method is not limited to a version number, but the version can also be designated by an edit date of that file. Even when one file is edited by a plurality of users, that file can undergo version management. Such management is used in collaborative edit processing of a document file using personal computers (PCs) which can communicate with each other via a network.
In recent years, as a data format that structurally describes data by appending tags, structured documents have attracted attention. As the typical standards of structured documents, XML (extensible Markup Language) and XHTML (extensible HyperText Markup Language) are known. When an application parses data of a tagged structured document, it generally uses an XML parser to parse the document.
As a technique for managing the versions of such structured document, Japanese Patent Laid-Open No. 7-200370 discloses a technique that manages the edited times of respective elements by appending attributes each of which includes an edit time of each edited element as a value.
Also, a schema processor which verifies, using a schema that defines the data structure, element contents, and data types of attribute values of a structured document, if the structured document satisfies that scheme is available. An application that needs to verify structured documents to be handled using a schema creates a new schema file along with upgrading of the version of the application. For this reason, when the data structure or data types of a structured document to be handled are changed, that application creates a new schema file to check validation of the upgraded structured document.
However, for example, when an application which has been repetitively upgraded handles data generated by an application of an older version, it needs to verify the data using a schema file according to the version. That is, in order to implement validation checking using a conventional schema processor, schema files corresponding to structured documents used in the respective versions of the application are required to be held.
For example, a structured document that describes an address book will be explained. A structured document of ver0.1 shown in FIG. 1 describes data of ID numbers assigned to persons, names, and addresses. A schema of the address book of ver0.1 in this case is expressed, as shown in FIG. 2. Note that this schema is described using RELAX NG as a schema language formulated by International Organization for Standardization (ISO).
Assume that in a structured document of ver0.2, a “phone” element corresponding to a telephone number is added to ver0.1. In this case, a structured document is expressed, as shown in FIG. 3, and its schema is expressed, as shown in FIG. 4. That is, although an added element is only a telephone number (“phone” element), two schema files (schema data) of ver0.1 and ver0.2 including redundant data need to be saved in a hard disk.